import os
from pathlib import Path
BASE_DIR = Path('slot_extraction')
bert_mrc_config = {
    'data_dir':'data',
    'vocab_file':"vocab.txt",
    'slot_list_root_path':os.path.join('data','slot_pattern'),
    'bert_slot_file_name':"bert_basic_slot_list",
    'bert_slot_complete_file_name':"bert_complete_slot_pattern",
    'log_dir': os.path.join('output','log'),
    'data_file_name':'orig_data_train.txt',
    'train_valid_data_dir':'train_valid_data_bert_mrc',
    'train_data_text_name':'train_split_data_text.npy',
    'valid_data_text_name':'valid_split_data_text.npy',
    'train_data_start_tag_name':'train_split_data_start_tag.npy',
    'train_data_end_tag_name':'train_split_data_end_tag.npy',
    'valid_data_start_tag_name':'valid_split_data_start_tag.npy',
    'valid_data_end_tag_name':'valid_split_data_end_tag.npy',
    'train_data_token_type_ids_name':'train_split_data_token_type_ids.npy',
    'valid_data_token_type_ids_name':'valid_split_data_token_type_ids.npy',
    'train_data_query_len_name':'train_split_data_query_len.npy',
    'valid_data_query_len_name':'valid_split_data_query_len.npy',
    'test_data_token_type_ids_name': 'test_split_data_token_type_ids.npy',
    'test_data_text_name':'test_data_text.npy',
    'test_data_tag_name':'test_data_tag.npy',
    'test_data_query_len_name':'test_data_query_len.npy',
    'test_data_query_class':'test_data_query_class.npy',
    'test_data_src_sample_id':'test_data_src_sample_id.npy',
    'orig_dev':'orig_data_dev.txt',
    'orig_test':'orig_data_test.txt',
    "standard_slot_description":os.path.join('data','slot_pattern','slot_description.csv'),
    "bert_pretrained_model_path":os.path.join('data','chinese_roberta_wwm_ext_L-12_H-768_A-12'),
    "bert_config_path":"bert_config.json",
    'bert_init_checkpoints':'bert_model.ckpt',
    "bert_mrc_model_dir":os.path.join('output','model','bert_mrc_model','checkpoint'),
    "bert_mrc_model_pb":os.path.join('output','model','bert_mrc_model','saved_model'),
    'direct_train_data_text_name':'direct_train_split_data_text.npy',
    'direct_valid_data_text_name':'direct_valid_split_data_text.npy',
    'direct_train_data_start_tag_name':'direct_train_split_data_start_tag.npy',
    'direct_train_data_end_tag_name':'direct_train_split_data_end_tag.npy',
    'direct_valid_data_start_tag_name':'direct_valid_split_data_start_tag.npy',
    'direct_valid_data_end_tag_name':'direct_valid_split_data_end_tag.npy',
    'direct_train_data_token_type_ids_name':'direct_train_split_data_token_type_ids.npy',
    'direct_valid_data_token_type_ids_name':'direct_valid_split_data_token_type_ids.npy',
    'direct_train_data_query_len_name':'direct_train_split_data_query_len.npy',
    'direct_valid_data_query_len_name':'direct_valid_split_data_query_len.npy',
    "direct_bert_mrc_model_dir":os.path.join('output','model','direct_bert_mrc_model','checkpoint'),
    "direct_bert_mrc_model_pb":os.path.join('output','model','direct_bert_mrc_model','saved_model'),
    'direct_test_data_token_type_ids_name': 'direct_test_split_data_token_type_ids.npy',
    'direct_test_data_text_name':'direct_test_data_text.npy',
    'direct_test_data_tag_name':'direct_test_data_tag.npy',
    'direct_test_data_query_len_name':'direct_test_data_query_len.npy',
    'direct_test_data_query_class':'direct_test_data_query_class.npy',
    'direct_test_data_src_sample_id':'direct_test_data_src_sample_id.npy',
    "bert_mrc_dice_model_dir":os.path.join('output','model','bert_mrc_dice_model','checkpoint'),
    "bert_mrc_dice_model_pb":os.path.join('output','model','bert_mrc_dice_model','saved_model'),
    "bert_mrc_ratio_imb_model_dir":os.path.join('output','model','bert_mrc_ratio_imb_model','checkpoint'),
    "bert_mrc_ratio_imb_model_pb":os.path.join('output','model','bert_mrc_ratio_imb_model','saved_model'),
    "bert_mrc_ratio_imb_use_start_label_model_dir":os.path.join('output','model','bert_mrc_ratio_imb_use_start_label_model','checkpoint'),
    "bert_mrc_ratio_imb_use_start_label_model_pb":os.path.join('output','model','bert_mrc_ratio_imb_use_start_label_model','saved_model'),
    "bert_mrc_focal_loss_model_dir":os.path.join('output','model','bert_mrc_focal_loss_model','checkpoint'),
    "bert_mrc_focal_loss_model_pb":os.path.join('output','model','bert_mrc_focal_loss_model','saved_model'),
}
# print(os.path.join(config.get("train_valid_data_dir"),config.get("train_data_text_name")))
